home *** CD-ROM | disk | FTP | other *** search
/ Sky at Night 2007 June / SAN CD 6-2007 CD-ROM 25.iso / pc / Software / AstroGrav_Win / Java / jre1.6.0 / lib / rt.jar / sun / awt / DebugHelperImpl.class (.txt) < prev    next >
Encoding:
Java Class File  |  2006-11-29  |  3.3 KB  |  145 lines

  1. package sun.awt;
  2.  
  3. import java.lang.reflect.Field;
  4. import java.lang.reflect.Modifier;
  5.  
  6. abstract class DebugHelperImpl extends DebugHelper {
  7.    protected static DebugSettings settings;
  8.    protected static DebugHelperImpl globalDebugHelperImpl;
  9.    private static boolean initialized = false;
  10.    private static final String PROP_ON = "on";
  11.    private static final String PROP_TRACE = "trace";
  12.    private static final String PROP_ASSERT = "assert";
  13.    private DebugHelperImpl parent = null;
  14.    private boolean tracingOn = false;
  15.    private boolean assertionsOn = false;
  16.  
  17.    static final void initGlobals() {
  18.       if (!initialized) {
  19.          NativeLibLoader.loadLibraries();
  20.          initialized = true;
  21.          settings = DebugSettings.getInstance();
  22.          globalDebugHelperImpl = GlobalDebugHelperImpl.getInstance();
  23.       }
  24.  
  25.    }
  26.  
  27.    static final DebugHelper factoryCreate(Class var0) {
  28.       initGlobals();
  29.       return new ClassDebugHelperImpl(var0);
  30.    }
  31.  
  32.    protected DebugHelperImpl(DebugHelperImpl var1) {
  33.       this.parent = var1;
  34.    }
  35.  
  36.    public final synchronized void setAssertOn(boolean var1) {
  37.       this.assertionsOn = var1;
  38.    }
  39.  
  40.    public final synchronized void setTraceOn(boolean var1) {
  41.       this.tracingOn = var1;
  42.    }
  43.  
  44.    public final synchronized void setDebugOn(boolean var1) {
  45.       try {
  46.          Class var2 = DebugHelper.class;
  47.          Field var3 = var2.getDeclaredField("on");
  48.          if (!Modifier.isFinal(var3.getModifiers())) {
  49.             var3.setBoolean(this, var1);
  50.          }
  51.       } catch (NoSuchFieldException var4) {
  52.          var4.printStackTrace();
  53.       } catch (IllegalAccessException var5) {
  54.          var5.printStackTrace();
  55.       }
  56.  
  57.    }
  58.  
  59.    public final synchronized void println(Object var1) {
  60.       if (this.tracingOn) {
  61.          printlnImpl(var1.toString());
  62.       }
  63.  
  64.    }
  65.  
  66.    public final synchronized void print(Object var1) {
  67.       if (this.tracingOn) {
  68.          printImpl(var1.toString());
  69.       }
  70.  
  71.    }
  72.  
  73.    public final synchronized String toString() {
  74.       String var1 = "Debug {\ton=false, \ttrace=" + this.tracingOn + ", " + "\tassert=" + this.assertionsOn + "}";
  75.       return var1;
  76.    }
  77.  
  78.    static synchronized native void printlnImpl(String var0);
  79.  
  80.    static synchronized native void printImpl(String var0);
  81.  
  82.    protected synchronized native void setCTracingOn(boolean var1);
  83.  
  84.    protected synchronized native void setCTracingOn(boolean var1, String var2);
  85.  
  86.    protected synchronized native void setCTracingOn(boolean var1, String var2, int var3);
  87.  
  88.    public final synchronized void printStackTrace() {
  89.       if (this.tracingOn) {
  90.          Thread.dumpStack();
  91.       }
  92.  
  93.    }
  94.  
  95.    public final synchronized void assertion(boolean var1) {
  96.       this.assertion(var1, "");
  97.    }
  98.  
  99.    public final synchronized void assertion(boolean var1, String var2) {
  100.       if (this.assertionsOn && !var1) {
  101.          throw new AssertionFailure(this, var2);
  102.       }
  103.    }
  104.  
  105.    protected void setParent(DebugHelperImpl var1) {
  106.       this.parent = var1;
  107.    }
  108.  
  109.    protected DebugHelperImpl getParent() {
  110.       return this.parent;
  111.    }
  112.  
  113.    protected void loadSettings() {
  114.       boolean var4;
  115.       if (this.parent != null) {
  116.          DebugHelperImpl var10002 = this.parent;
  117.          var4 = false;
  118.       } else {
  119.          var4 = true;
  120.       }
  121.  
  122.       boolean var1 = this.getBoolean("on", var4);
  123.       boolean var2 = this.getBoolean("assert", this.parent != null ? this.parent.assertionsOn : true);
  124.       boolean var3 = this.getBoolean("trace", this.parent != null ? this.parent.tracingOn : false);
  125.       this.setDebugOn(var1);
  126.       this.setAssertOn(var2);
  127.       this.setTraceOn(var3);
  128.    }
  129.  
  130.    protected synchronized boolean getBoolean(String var1, boolean var2) {
  131.       String var3 = this.getString(var1, String.valueOf(var2));
  132.       return var3.equalsIgnoreCase("true");
  133.    }
  134.  
  135.    protected synchronized int getInt(String var1, int var2) {
  136.       String var3 = this.getString(var1, String.valueOf(var2));
  137.       return Integer.parseInt(var3);
  138.    }
  139.  
  140.    protected synchronized String getString(String var1, String var2) {
  141.       String var3 = settings.getString(var1, var2);
  142.       return var3;
  143.    }
  144. }
  145.